home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1996 November & December / Amiga-CD 1996 #11-12.iso / online / voodoo / install < prev    next >
Text File  |  1996-09-15  |  37KB  |  836 lines

  1. ; $VER: Install_Voodoo 1.0 (13.10.95)
  2. ; Description: Installer script for Voodoo
  3.  
  4. (set cpu (database "cpu"))
  5. (set cpu020 (and (<> cpu "68000") (<> cpu "68010")))
  6. (set v39 (>= (/ (getversion "exec.library" (resident)) 65536) 39))
  7.  
  8. (set vn (getversion "Voodoo"))
  9. (set vv (/ vn 65536))
  10. (set vr (- vn (* vv 65536)))
  11.  
  12. ; all strings used in this installer script
  13. (if (= @language "español")
  14. ; SPANISH VOODOO INSTALLATION STRINGS
  15. (
  16. (set #need39 "Este program requiere OS 3.0 o mayor para funcionar.")
  17. (set #need43installer "This install script requires Installer V43, available on Aminet. Please upgrade your Installer and try again.")
  18. (set #nohelp "No hay ayuda disponible.")
  19. (set #welcome (cat "Voodoo es un lector de correo electrónico multitarea gráfico para AmigaOS 3.0. Voodoo dispone de una interface ClassAct completa, una interface ARexx extensa, soporte MIME totalmente integrado, una agenda integrada y acceso simultaneo a varias carpetas.\n\n"
  20.         (if (exists "REGISTER")
  21.                 (cat "Esta es una versión de demostración de Voodoo. Por favor, consulte la documentación para más información sobre las restricciones e instrucciones para registrarse.")
  22.                 (cat "Gracias por registrarse a Voodoo. Esta versión avanzada, llamada Serious Voodoo, tiene muchas nuevas caracteristicas para hacer el uso del correo electrónico más simple y divertido.")
  23.         )
  24.         ("\n\neste programa estalará el lector de correo electrónico (e-mail) Voodoo versión %ld.%ld y las clases de gadgets de ClassAct necesarias en su sistema.\n" vv vr))
  25. )
  26. (set #destdir-prompt "Por favor, seleccione el directorio donde desea instalar Voodoo.")
  27. (set #destdir-2 "\n(Si no acepta el directorio por defecto, se creará in directorio llamado 'Voodoo' ahí.)")
  28. (set #destdir-3 "\nSe creará un directorio llamado 'Voodoo' en el directorio que vd. elija.")
  29. (set #destdir-help "Se crerá un directorio para Voodoo ahí. A menos que esté instalando desde disco, aceptando el directorio por defecto, la mayoría de los ficheros no tendrán que ser copiados.")
  30. (set #destdir-floppy "Si está instalando desde disco DEBE elegir otro directorio ya que Voodoo no puede ser instalado en el directorio original en este caso.")
  31. (set #installing "Instalando ")
  32. (set #copying-docs "Copiando documentación")
  33. (set #languages-prompt "Voodoo tiene el lenguaje Inglés integrado. Ha sido localizado a otros varios lenguajes. ¿Qué catálogo de lenguaje desea instalar?")
  34. (set #languages-where "¿Dónde desea instalar el directorio de Catalogos?")
  35. (set #readme "Visualizando las notas de la versión...")
  36. (set #bye "En el caso de que necesite ayuda configurando o usando Voodoo, si pulsa HELP se le brindará documentación en linea.\nEspero que disfrute usando Voodoo.\nPor favor, recuerde que Voodoo es shareware. Si le gusta Voodoo, debería registrarse para soportar su desarrollo continuado.")
  37.  
  38. (set #contrib "En el directorio 'Contrib' del archivo de configuración, puede encontrar varias utilidades que le pueden ser útiles con Voodoo.\n\nA continuación tendrá la oportunidad de instalar algunas de ellas.\n\nAntes de borrar este directorio después de la instalación, por favor, echele un vistazo a lo que esté disponible en el directorio 'Contrib'.")
  39. (set #contrib-amipop "¿Desea instalar AmiPOP?\n\nSi usa una cuenta SLIP/PPP y ha instalado AmiPOP anteriormente, probablemente querrá instalarlo ahora.\n\nSi lo hace, este script de instalación le preguntará a continuación algunas cuestiones sobre la configuración.")
  40. (set #amipop-stack "AmiPOP está disponible para los dos paquetes de red TCP/IP más usuales: AS225/Inet225 y AmiTCP. ¿Para qué paquete desea instalar AmiPOP?")
  41. (set #amipop-help "AmiPOP es una pequeña utilidad para recuperar correo  de un sistema remoto con un protocolo POP. Es usada normalmente en sistemas con cenexión telefónica SLIP/PPP. Si tiene uno de tales sistemas, debe correr AmiPOP para recuperar el correo nuevo.\n\nEl se mantendrá oculto como una Commodity y traerá el nuevo correo a un fichero-buzón en su sistema en unos pocos minutos.\n\nVoodoo leerá el correo de este fichero y lo importará a sus carpetas.")
  42. (set #amipop-where "¿Dónde desea instalar AmiPOP?\nSi lo instala fuera del WBStartup tendrá que arrancarlo manualmente al conectarse a Internet.")
  43. (set #amipop-host "¿Cuál es la dirección de su máquina POP?\nSi no conoce la dirección de su máquina POP, pregunte a su preveedor de Internet.\nSuele se algo como 'mail.isp.com' o 'pop.isp.com'.")
  44. (set #amipop-account "¿Cuál es el combre de su cuenta POP?\nNormalmente es el nombre de su cuenta shell, si la tiene, o, quizás, el nombre de su máquina si tiene una cuenta con acceso SLIP/PPP solamente.")
  45. (set #amipop-password "¿Cuál es su clave para el POP?\nTambién puede dejar este campo en blanco si lo entra al arrancar AmiPOP.")
  46. (set #amipop-spool "¿Dónde desea poner el fichero-buzón de AmiPOP?\nAmiPOP traerá el correo a este fichero, desde donde Voodoo puede leerlo.\nTambién debe entrar este camino en la configuración de Voodoo")
  47. (set #amipop-tooltype "Inicializando los tipos de herramientas de AmiPOP...")
  48.  
  49. (set #contrib-sabot "¿Desea instalar Sabot?\n\nSabot es una pequeña utilidad que permanece oculta y visualiza un icono en el Workbench reflejando el estado de su buzón.")
  50. (set #sabot-where "¿Dónde desea instalar Sabot?\nPor defecto es el mismo lugar que AmiPOP.")
  51. (set #sabot-icons "Sabot necesita tres iconos para las imágenes de su propio AppIcon. ¿Dónde desea mantener estos iconos?")
  52.  
  53. (set #contrib-obtaingir "¿Desea instalar NewObtainGIRPort?\n\nEste pequeño programa parchea la función ObtainGIRPort() de la intuition.library para evitar situaciones de bloqueo en gadgets BOOPSI complejos.")
  54. (set #obtaingir-startup "Añadiendo NewObtainGIRPort a los ficheros de arranque")
  55.  
  56. (set #contrib-scripts-1 "¿Desea instalar los scripts de ejemplo?\n\nEstos scripts del shell y ARexx muestran varias formas de usar Voodoo junto con otros programas.")
  57. (set #contrib-scripts-2 "Por favor, ¡advierta que los scripts de ejemplo se encuentran en los directorios Rexx y S!\n\nEstos scripts del shell y ARexx muestran varias formas de usar Voodoo junto con otros programas.")
  58. )
  59. ; ENGLISH VOODOO INSTALLATION STRINGS
  60. (
  61. (set #need39 "This program requires OS 3.0 or later to function.")
  62. (set #need43installer "This install script requires Installer V43, available on Aminet. Please upgrade your Installer and try again.")
  63. (set #nohelp "No help available.")
  64. (set #welcome (cat "Voodoo is a multithreaded, graphic E-Mail reader for AmigaOS 3.0. Voodoo features a complete ClassAct GUI, an extensive ARexx interface, fully integrated MIME support, a built-in address book and simultaneous multi-folder access.\n\n"
  65.     (if (exists "REGISTER")
  66.         (cat "This is the demo version of Voodoo. Please refer to the documentation for information on the restrictions and instructions on how to register.")
  67.         (cat "Thank you for registering Voodoo. This advanced version called Serious Voodoo has many new features to make using E-Mail simpler and more fun.")
  68.     )
  69.     ("\n\nThis program will install the Voodoo E-Mail reader version %ld.%ld and the necessary ClassAct gadget classes on your system.\n" vv vr))
  70. )
  71. (set #destdir-prompt "Please select the directory where you want Voodoo installed.")
  72. (set #destdir-2 "\n(If you do not accept the default, a directory 'Voodoo' will be created there.)")
  73. (set #destdir-3 "\nA directory named 'Voodoo' will be created in the directory you choose here.")
  74. (set #destdir-help "A directory for Voodoo will be created here. Unless you are installing from floppy disk, by accepting the default directory, most of the files don't have to be copied.")
  75. (set #destdir-floppy "You are installing from a floppy disk. You MUST choose another directory, since Voodoo can not be installed in the source dir in this case.")
  76. (set #installing "Installing ")
  77. (set #copying-docs "Copying documentation")
  78. (set #languages-prompt "Voodoo has English as a built-in language. It is localized to several other languages. Which language catalogs do you want to install?")
  79. (set #languages-where "Where do you want to install the Catalogs directory?")
  80. (set #readme "Displaying the version notes readme...")
  81. (set #bye "In case you need help configuring or using Voodoo, pressing HELP will bring up the online documentation.\nI hope you will enjoy using Voodoo.\nPlease remember that Voodoo is shareware. If you like Voodoo, you should register it to support continued development.")
  82.  
  83. (set #contrib "In the 'Contrib' directory of the installation archive, you can find several utilities that could prove useful with Voodoo.\n\nNext you will have a chance to install some of these utilities.\n\nBefore deleting this directory after installation, please take a closer look at what else is available in the 'Contrib' dir.")
  84. (set #contrib-amipop "Would you like to install AmiPOP?\n\nIf you use a SLIP/PPP account and have not installed AmiPOP before, you will probably want to install it now.\n\nIf you do, this installation script will ask you some questions about the configuration next.")
  85. (set #amipop-stack "AmiPOP is available for both of the major TCP/IP stacks, AS225/Inet225 and AmiTCP. For which stack do you wish to install AmiPOP for?")
  86. (set #amipop-help "AmiPOP is a small utility for retrieving mail from a remote system with the POP protocol. It is mostly used on dial-up SLIP/PPP systems. If you have such a system, you have to run AmiPOP to get new mail.\n\nIt will remain in the background as a Commodity and download new mail to a spool file on your system every few minutes.\n\nVoodoo will read mail from this spool file and import it to its folders.")
  87. (set #amipop-where "Where would you like to install AmiPOP?\nIf you install it outside WBStartup, you will have to manually run it when connecting to Internet.")
  88. (set #amipop-host "What is your POP host address?\nIf you do not know the address of your POP host, ask your Internet provider.\nIt is likely to be something like 'mail.isp.com' or 'pop.isp.com'.")
  89. (set #amipop-account "What is your POP account name?\nThis is most likely the name of your shell account, if you have one, or perhaps the name of your machine, if you have a SLIP/PPP only connection.")
  90. (set #amipop-password "What is your POP password?\nYou can leave this empty if you would rather enter it when starting AmiPOP.")
  91. (set #amipop-spool "Where do you wish to put the AmiPOP spool file?\nAmiPOP will download mail to this file, where Voodoo can then read it from.\nYou must enter this path also to Voodoo configuration")
  92. (set #amipop-tooltype "Setting AmiPOP tooltypes...")
  93.  
  94. (set #contrib-sabot "Do you wish to install Sabot?\n\nSabot is a small utility that stays on the background and displays an icon on the Workbench reflecting the status of the mailbox.")
  95. (set #sabot-where "Where would you like to install Sabot?\nThe default is the same place as AmiPOP.")
  96. (set #sabot-icons "Sabot needs three icons for the images of its own AppIcon. Where do you want to keep these icons?")
  97.  
  98. (set #contrib-obtaingir "Would you like to install NewObtainGIRPort?\n\nThis small program patches the ObtainGIRPort() function of intuition.library to avoid deadlock situations in complex BOOPSI gadgets.")
  99. (set #obtaingir-startup "Adding NewObtainGIRPort to system startup files")
  100.  
  101. (set #contrib-scripts-1 "Do you want to install the sample scripts?\n\nThese shell and ARexx scripts demonstrate ways to use Voodoo together with other programs.")
  102. (set #contrib-scripts-2 "Please notice the sample scripts in Rexx and S subdirectories!\n\nThese shell and ARexx scripts demonstrate ways to use Voodoo together with other programs.")
  103. )
  104. )
  105.  
  106. ; ---------------------------------------------------------------------------
  107.  
  108. ; ************* PLEASE COPY THIS PROCEDURE ALONG WITH THE STRINGS IT USES 
  109. ; ************* TO THE INSTALLER SCRIPT OF YOUR CLASSACT APPLICATION.
  110. ; ************* IT WILL TAKE CARE OF INSTALLING THE CLASSACT CLASSES YOU
  111. ; ************* PROVIDED WITH YOUR APPLICATION TO THE USER'S SYSTEM.
  112.  
  113. ; ClassAct installation procedure V 1.7 (15.9.96) by Osma Ahvenlampi
  114.  
  115. (set cpu (database "cpu"))
  116. (set cpu020 (and (<> cpu "68000") (<> cpu "68010")))
  117. (set v39 (>= (/ (getversion "exec.library" (resident)) 65536) 39))
  118.  
  119. ; percentage of the size of included ClassAct classes versus the whole
  120. ; distribution (ie. total "complete" percentage after ClassAct is installed)
  121. (set classact-complete 50)
  122.  
  123. ; ClassAct installer scripts
  124. (if (= @language "español")
  125. ; SPANISH CLASSACT INSTALLATION STRINGS
  126. (
  127. (set #classdest-prompt "Por favor, seleccione el directorio donde desea instalar las clases de ClassAct.\n(Vea la ayuda para más detalles)")
  128. (set #classdest-help (cat "ClassAct es un kit de interface gráfica consistente es clases compartidas BOOPSI.\n\nAlgunos programas requieren que algunas o todas de las clases de ClassAct estén instaladas en su sistema. "
  129.     (if v39 (cat "El OS 3.0 tiene un directorio estándar para las clases BOOPSI: el directorio SYS:Classes. Se recomienda que instale ClassAct ahí.")
  130.             (cat "El OS 2.0 no tiene un sitio estándar para las clases BOOPSI residentes en disco. En el OS 3.0 esas clases son almacenadas en el directorio SYS:Classes. Se recomienda que cree este directorio e instale ClassAct ahí.\nEste directorio debe ser añadido a la asignación de LIBS:. Esto puede ser hecho colocando el comando\nAssign >NIL: LIBS: SYS:Classes ADD\nal User-Startup. Este instalador lo hará por usted.")
  131.         )
  132.     )
  133. )
  134. (set #classes-020 "¿Quiere usar la versión optimizada para OS 3.0 y 020 de ClassAct?")
  135. (set #help-020 "Algunas librerías de ClassAct tienen versiones optimizadas para el uso en máquinas con OS 3.0 y 020 o superior. Si su Amiga es una de tales máquinas debería instalar estas. Las versiones 68000/2.0 también funcionarán, pero son ligeramente más lentas")
  136. (set #noclasses-message "El subdirectorio que seleccionó para sus clases ClassAct no forma parte de la asignación de LIBS:.\n\nEs necesario añadir esta asignación para que las clases puedan ser localizadas adecuadamente.")
  137. (set #creating-dir "Creando directorio ")
  138. (set #usbackup-prompt "Ahora se hará una copia de seguridad del User-Startup.")
  139. (set #usbackup-help "Este instalador hará ahora una modificación en el User-Startup. Antes de hacer esto se hará una copia de seguridad del User-Startup en S:User-Startup.old")
  140. (set #adding-1 "Añadiendo ")
  141. (set #adding-2 "a la asignación de LIBS:\n")
  142. (set #adding-help "Esto es necesario para que las clases puedan ser encontradas.")
  143. (set #junod-button "Parece que tiene el último button.gadget de Comodore ('V42') instalado en su sistema.\n\nEl button.gadget de ClassAct es superior a este gadget y le recomendamos que lo remplace. El button.gadget de ClassAct es compatible con el de Commodore. ¿Desea hacer una copia de seguridad del gadget de Commodore y remplazarlo por la versión de ClassAct?")
  144. (set #junod-backed "Se ha hecho una copia de seguridad del button.gadget 'V42' de Commodore con el nombre button.gadget.v42.\n\nEl button.gadget de ClassAct será instalado en su lugar.")
  145. (set #junod-kept "El button.gadget 'V42' de Commodore no fué remplazado con la versión superior de ClassAct.\n\nLos programas que dependan de la disponibilidad de las características de la versión de ClassAct funcionarán mal probablemente")
  146. ;(set #caprefs-message "CAPrefs es una pequeña utilidad que inicializa algunas preferencias del usuario para las aplicaciones ClassAct. Estas incluyen el estilo de resaltado (Fino/GadTools/Xen), relleno de ventanas, y detalles de las etiquetas de grupo.\n\nPor favor, use las preferencias de interface de ClassAct en su cajón de sistema 'Prefs' .\n\n")
  147. (set #caprefs-message "ClasAct tiene varios aspectos configurables por el usuario que afectan a la apariencia de las interfaces ClassAct.\n\nEstos ajustes pueden ser modificados usando la herramienta de preferencias de ClassAct que será instalada en su cajón 'Prefs'.\n\nUna pequeña herramienta, CAPrefs, será añadida a su user-startup para cargar los ajustes al arrancar.")
  148. (set #caprefs-startup-1 "Añadiendo el comando\n\n")
  149. (set #caprefs-startup-2 "\n\nA su s:User-Startup.")
  150. (set #decompressing-classact "Distribución de Classact comprimida detectada\n\nDescomprimiendo a RAM:")
  151. (set #deleteing-cltmp "Borrando ficheros temporales")
  152. )
  153. ; ENGLISH CLASSACT INSTALLATION STRINGS
  154. (
  155. (set #classdest-prompt "Please select the directory where you want the ClassAct classes installed.\n(See help for details)")
  156. (set #classdest-help (cat "ClassAct is a GUI toolkit consisting of shared BOOPSI classes.\n\nSome programs require some or all of the ClassAct classes installed on your system. "
  157.     (if v39 (cat "OS 3.0 has a standard directory for BOOPSI classes, the SYS:Classes directory. It is recommended that you install ClassAct there.")
  158.             (cat "OS 2.0 does not have a standard place for disk resident BOOPSI classes. On OS 3.0 these classes are stored in the SYS:Classes directory. It is recommended that you create this directory and install ClassAct there.\nThis directory must be added in the LIBS: assign. This can be done by placing the command\nAssign >NIL: LIBS: SYS:Classes ADD\nto User-Startup. This installer will do this for you.")
  159.         )
  160.     )
  161. )
  162. (set #classes-020 "Do you want to use the OS 3.0, 020 optimised version of ClassAct?")
  163. (set #help-020 "Some ClassAct libraries have versions optimised for use on 020 or better equipped OS 3.0 or later machines. If your Amiga is such equipped, you should install these. The 68000/2.0 versions will also work, but are slightly slower.")
  164. (set #noclasses-message "The directory you selected for your ClassAct classes is not a part of the LIBS: assign.\n\nIt is necessary to add this assign so that the classes will be found properly.")
  165. (set #creating-dir "Creating directory ")
  166. (set #usbackup-prompt "User-Startup will now be backed up.")
  167. (set #usbackup-help "This installer will next make a modification in User-Startup. Before doing this the old User-Startup will be backed up to S:User-Startup.old")
  168. (set #adding-1 "Adding ")
  169. (set #adding-2 " to LIBS: assign\n")
  170. (set #adding-help "This is necessary so that the custom classes can be found.")
  171. (set #junod-button "It seems you have a late Commodore 'V42' button.gadget installed on your system.\n\nClassAct's button.gadget is far more capable than this gadget, and we recommend that you replace it. The ClassAct button.gadget is backwards compatible to the Commodore gadget. Do you wish to back up the Commodore gadget and replace it with the ClassAct version?")
  172. (set #junod-backed "The Commodore 'V42' button.gadget has been backed up with the name button.gadget.v42.\n\nThe ClassAct button.gadget will be installed in its place.")
  173. (set #junod-kept "The Commodore 'V42' button.gadget was not replaced with the more capable ClassAct version.\n\nPrograms depending on the availability of ClassAct-only features will be likely to work wrong.")
  174. ;(set #caprefs-message "CAPrefs is a small utility that sets some user preferences for ClassAct applications. These include the bevel style (Thin/Gadtools/Xen), window backfills, and group label details.\n\nPlease use the ClassAct GUI prefs editor to alter the default settings provided. ClassAct prefs will be installed in your system Prefs drawer.\n\n")
  175. (set #caprefs-message "ClassAct has several user-configurable aspects that affect the look of ClassAct interfaces.\n\nThese settings can be changed using the ClassAct preferences tool that will be installed in yout Prefs drawer.\n\nA small tool, CAPrefs, will be added to your user-startup to load the settings on reboot.")
  176. (set #caprefs-startup-1 "Adding the command\n\n")
  177. (set #caprefs-startup-2 "\n\nTo your s:User-Startup.")
  178. (set #decompressing-classact "Compressed ClassAct distribution detected\n\nDecompressing to RAM:")
  179. (set #deleting-cltmp "Deleting temporary files")
  180. )
  181. )
  182.  
  183. (procedure install-classact
  184. ; call this procedure to copy the classes included in the Classes directory
  185. ; in your distribution dir.
  186.     (if (exists "ClassAct.lha")    ; ClassAct is compressed - need to decompress first
  187.         (                        ; Distribution includes LHEX
  188.             (working (cat #decompressing-classact))
  189. ; ClassAct.lha contains paths/files "Classes/*", "C/CheckAssign", "Prefs/CAPrefs" and "Prefs/ClassAct"
  190.             (run "lhex -aqfw=ram:ClassAct/ x ClassAct.lha")
  191.             (set @classact-source "RAM:ClassAct")
  192.         )
  193.         (set @classact-source (pathonly @icon))
  194.     )
  195.     (if (exists "ClassAct.lzx")    ; ClassAct is compressed - need to decompress first
  196.         (                        ; Distribution includes UNLZX
  197.             (working (cat #decompressing-classact))
  198. ; ClassAct.lzx contains paths/files "Classes/*", "C/CheckAssign",  "Prefs/CAPrefs" and "Prefs/ClassAct"
  199.             (run "unlzx -amq x ClassAct.lzx ram:ClassAct/")
  200.             (set @classact-source "RAM:ClassAct")
  201.         )
  202.         (set @classact-source (pathonly @icon))
  203.     )
  204.  
  205.     (if (exists (tackon @classact-source "Classes")) ; The archive contains a ClassAct library update.
  206.     (
  207.         (set comp-dest  (/ (* classact-complete 2) 10))
  208.         (set comp-libs  (/ (* classact-complete 3) 10))
  209.         (set comp-dirs  (/ (* classact-complete 4) 10))
  210.         (set comp-junod (/ (* classact-complete 5) 10))
  211.         (set comp-020   (/ (* classact-complete 6) 10))
  212.         (set comp-gad   (/ (* classact-complete 7) 10))
  213.         (set comp-im    (/ (* classact-complete 8) 10))
  214.         (set comp-prefs (/ (* classact-complete 9) 10))
  215.     
  216.         ; has the user installed ClassAct in CLASSACT: ?
  217.         (set @classact-dest (getassign "CLASSACT" "A"))
  218.         (if (= @classact-dest "") (set @classact-dest "SYS:Classes"))
  219.         
  220.         ; is ClassAct already in SYS:Classes ?
  221.         (if (or (not (exists (tackon @classact-dest "Gadgets/layout.gadget") (noreq)))
  222.                 (= @user-level 2))
  223.             ; no, ask where it should be placed
  224.             (set @classact-dest
  225.                 (askdir
  226.                     (prompt #classdest-prompt)
  227.                     (help #classdest-help)
  228.                     (default @classact-dest)
  229.                     (newpath)
  230.                 )
  231.             )
  232.         )
  233.         
  234.         (complete comp-dest)
  235.         
  236.         (if (<> (run (cat (tackon @classact-source "C/CheckAssign") " LIBS: " @classact-dest)) 0)
  237.             (
  238.                 (message #noclasses-message)
  239.                 (if (not (exists @classact-dest))
  240.                     (makedir @classact-dest (prompt (cat #creating-dir @classact-dest)))
  241.                 )
  242.                 (set @addassign (cat "Assign >NIL: LIBS: " @classact-dest " ADD\n"))
  243.                 (startup "CLASSACT"
  244.                     (command @addassign)
  245.                     (prompt (cat #adding-1 @classact-dest #adding-2))
  246.                     (help #adding-help)
  247.                 )
  248.                 (run (@addassign))
  249.             )
  250.         )
  251.         
  252.         (complete comp-libs)
  253.         
  254.         (set @classact-gadgets (tackon @classact-dest "Gadgets"))
  255.         (set @classact-images (tackon @classact-dest "Images"))
  256.         
  257.         (if (not (exists @classact-gadgets (noreq)))
  258.             (makedir @classact-images
  259.                 (prompt (cat #creating-dir @classact-gadgets))
  260.             )
  261.         )
  262.         
  263.         (if (not (exists @classact-images (noreq)))
  264.             (makedir @classact-images
  265.                 (prompt (cat #creating-dir @classact-images))
  266.             )
  267.         )
  268.         
  269.         (complete comp-dirs)
  270.         
  271.         (if (exists "SYS:Classes/Gadgets/button.gadget")
  272.             (if (= 42 (/ (getversion "SYS:Classes/Gadgets/button.gadget") 65536))
  273.                 (if (askbool (prompt #junod-button) (help @askbool-help) (default 1))
  274.                     (
  275.                         (rename "SYS:Classes/Gadgets/button.gadget" "SYS:Classes/Gadgets/button.gadget.v42")
  276.                         (message #junod-backed)
  277.                     )
  278.                     (message #junod-kept)
  279.                 )
  280.             )
  281.         )
  282.         
  283.         (complete comp-junod)
  284.         
  285.         (if (and (and cpu020 v39) (exists (tackon @classact-source "Classes/Gadgets/layout.gadget.020")))
  286.             (set classes-020 (askbool (prompt #classes-020) (help #help-020) (default 1)))
  287.             (set classes-020 0)
  288.         )
  289.  
  290.         (complete comp-020)
  291.         
  292.         (set @source-path (tackon @classact-source "Classes/Gadgets"))
  293.         (foreach @source-path "#?.gadget"
  294.             (
  295.                 (set thislib (tackon @source-path @each-name))
  296.                 (if (and classes-020 (exists (cat thislib ".020")))
  297.                     (set thislib (cat thislib ".020"))
  298.                 )
  299.                 (copylib (source thislib)
  300.                     (dest @classact-gadgets)
  301.                     (newname @each-name)
  302.                     (prompt (cat #installing @each-name))
  303.                     (help #classdest-help)
  304.                     (optional "force" "askuser")
  305.                 )
  306.             )
  307.         )
  308.         
  309.         (complete comp-gad)
  310.         
  311.         (set @source-path (tackon @classact-source "Classes/Images"))
  312.         (foreach @source-path "#?.image"
  313.             (
  314.                 (set thislib (tackon @source-path @each-name))
  315.                 (if (and classes-020 (exists (cat thislib ".020")))
  316.                     (set thislib (cat thislib ".020"))
  317.                 )
  318.                 (copylib (source thislib)
  319.                     (dest @classact-images)
  320.                     (newname @each-name)
  321.                     (prompt (cat #installing @each-name))
  322.                     (help #classdest-help)
  323.                     (optional "force" "askuser")
  324.                 )
  325.             )
  326.         )
  327.         
  328.         (complete comp-im)
  329.  
  330.         (set @source-path (tackon @classact-source "Classes"))
  331.         (foreach @source-path "#?.class"
  332.             (
  333.                 (set thislib (tackon @source-path @each-name))
  334.                 (if (and classes-020 (exists (cat thislib ".020")))
  335.                     (set thislib (cat thislib ".020"))
  336.                 )
  337.                 (copylib (source thislib)
  338.                     (dest @classact-dest)
  339.                     (newname @each-name)
  340.                     (prompt (cat #installing @each-name))
  341.                     (help #classdest-help)
  342.                     (optional "force" "askuser")
  343.                 )
  344.             )
  345.         )
  346.     )
  347.     )
  348.     (if (exists (tackon @classact-source "Prefs/ClassAct")) ; The archive contains ClassAct prefs tools
  349.     (
  350.         (message #caprefs-message)
  351.         
  352.         (copylib (source (tackon @classact-source "Prefs/CAPrefs")) 
  353.             (dest "C:") 
  354.             (prompt (cat #installing "CAPrefs"))
  355.         )
  356.         (copylib (source (tackon @classact-source "Prefs/ClassAct"))
  357.             (dest "SYS:Prefs")
  358.             (prompt (cat #installing "ClassAct Prefs"))
  359.             (infos)
  360.         )
  361.         
  362.         (complete comp-prefs)
  363.         
  364.         (if (not (exists "ENVARC:ClassAct" (noreq)))
  365.             (
  366.                 (makedir "ENVARC:ClassAct"
  367.                     (prompt (cat #creating-dir "ENVARC:ClassAct"))
  368.                 )
  369.                 (textfile (dest "ENVARC:ClassAct/ClassAct")
  370.                     (append "")
  371.                 )
  372.             )
  373.         )
  374.         (set caprefs-cmd "C:CAPrefs >NIL:\n")
  375.  
  376.         (startup "CAPREFS"
  377.             (prompt (cat #caprefs-startup-1 caprefs-cmd #caprefs-startup-2))
  378.             (help #caprefs-message)
  379.             (command caprefs-cmd)
  380.         )
  381.     )
  382.     )
  383.     
  384.     (if (exists "ClassAct.lha")
  385.         (delete "RAM:ClassAct" (all)
  386.             (prompt #deleting-cltmp)
  387.         )
  388.     )
  389.  
  390.     (complete classact-complete)
  391. )
  392.  
  393. ; ************** END OF CLASSACT INSTALL PROCEDURE. COPY THE BLOCK ABOVE
  394. ; ************** TO YOUR CLASSACT APPLICATION INSTALLER.
  395.  
  396. ; ---------------------------------------------------------------------------
  397.  
  398. (complete 0)
  399.  
  400. (if (not v39)
  401.     (abort #need39)
  402. )
  403.  
  404. (if (< (/ @installer-version 65536) 43)
  405.     (abort #need43installer)
  406. )
  407.  
  408. (message #welcome)
  409. (welcome)
  410.  
  411. (set @source-dir (pathonly @icon))
  412.  
  413. (if (not (exists "Voodoo.lha"))
  414.     (
  415.         (set #destdir-prompt (cat #destdir-prompt #destdir-2))
  416.         (set @default-dest @source-dir)
  417.     )
  418.     (set #destdir-prompt (cat #destdir-prompt #destdir-3))
  419. )
  420.  
  421. (set nodestination 1)
  422. (while nodestination
  423.     (
  424.         (set defdir
  425.             (askdir
  426.                 (prompt #destdir-prompt)
  427.                 (help #destdir-help)
  428.                 (default @default-dest)
  429.             )
  430.         )
  431.         (set @default-dest defdir)
  432.  
  433.         (set nocopy (= @source-dir @default-dest))
  434.         (if (and nocopy (exists "Voodoo.lha"))
  435.             (message #destdir-floppy)
  436.             (set nodestination 0)
  437.         )
  438.     )
  439. )
  440.  
  441. (install-classact)
  442.  
  443. (if (not nocopy)
  444.     (
  445.     (set @default-dest (tackon @default-dest "Voodoo"))
  446.     
  447.     (set update-voodoo (exists @default-dest))
  448.     
  449.     (if (not update-voodoo)
  450.         (makedir @default-dest 
  451.             (prompt #creating-dir @default-dest) 
  452.             (infos)
  453.         )
  454.     )
  455.     
  456.     (complete 55)
  457.     
  458.     (if (exists "Voodoo.lha")
  459.         (
  460.             (working (cat #installing "Voodoo"))
  461.             (run (cat "lhex -aqfw=" @default-dest " x Voodoo.lha"))
  462.         )
  463.         (
  464.             (copyfiles
  465.                 (source "Voodoo")
  466.                 (dest @default-dest)
  467.                 (prompt #installing "Voodoo")
  468.                 (infos)
  469.             )
  470.         
  471.             (copyfiles
  472.                 (source "")
  473.                 (choices "Voodoo.guide" "SECURITY" "HISTORY" "README" "BUGS")
  474.                 (dest @default-dest)
  475.                 (prompt #copying-docs)
  476.                 (infos)
  477.             )
  478.         )
  479.     )
  480.         
  481.     (if (exists "Voodoo.key")
  482.         (copyfiles (source "Voodoo.key")
  483.             (dest @default-dest)
  484.             (prompt #installing "Voodoo")
  485.         )
  486.         (run (cat "C:SetDate " (tackon @default-dest "Voodoo")) (prompt #installing "Voodoo"))
  487.     )
  488.     
  489.     (complete 70)
  490.     
  491.     (set languages 0)
  492.     (if (exists "LOCALE:Languages/français.language" (noreq)) (set languages (bitor languages 1)))
  493.     (if (exists "LOCALE:Languages/suomi.language" (noreq)) (set languages (bitor languages 2)))
  494.     (if (exists "LOCALE:Languages/italiano.language" (noreq)) (set languages (bitor languages 4)))
  495.     (if (exists "LOCALE:Languages/íslenska.language" (noreq)) (set languages (bitor languages 8)))
  496.     (if (exists "LOCALE:Languages/greek.language" (noreq)) (set languages (bitor languages 16)))
  497.     (if (exists "LOCALE:Languages/español.language" (noreq)) (set languages (bitor languages 32)))
  498.     (if (exists "LOCALE:Languages/deutsch.language" (noreq)) (set languages (bitor languages 64)))
  499.     (if (exists "LOCALE:Languages/português.language" (noreq)) (set languages (bitor languages 128)))
  500.     (if (exists "LOCALE:Languages/nederlands.language" (noreq)) (set languages (bitor languages 256)))
  501.     (if (exists "LOCALE:Languages/svenska.language" (noreq)) (set languages (bitor languages 512)))
  502.     (if (exists "LOCALE:Languages/norsk.language" (noreq)) (set languages (bitor languages 1024)))
  503.     
  504.     (set languages
  505.         (askoptions 
  506.             (choices "Français" "Suomi" "Italiano" "Íslenska" "Greek" "Español" "Deutsch" "Português" "Nederlands" "Svenska" "Norsk")
  507.             (prompt #languages-prompt)
  508.             (help #askoptions-help)
  509.             (default languages)
  510.         )
  511.     )
  512.     
  513.     (if (bitand languages 65534)
  514.         (
  515.             (set catdir (tackon @default-dest "Catalogs"))
  516.             (if (not (exists catdir))
  517.                 (makedir catdir (prompt (cat #creating-dir catdir)))
  518.             )
  519.             (if (bitand languages 1)
  520.                 (
  521.                     (set lang "français")
  522.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  523.                         (dest (tackon catdir lang))
  524.                     )
  525.                 )
  526.             )
  527.             (if (bitand languages 2)
  528.                 (
  529.                     (set lang "suomi")
  530.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  531.                         (dest (tackon catdir lang))
  532.                     )
  533.                 )
  534.             )
  535.             (if (bitand languages 4)
  536.                 (
  537.                     (set lang "italiano")
  538.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  539.                         (dest (tackon catdir lang))
  540.                     )
  541.                 )
  542.             )
  543.             (if (bitand languages 8)
  544.                 (
  545.                     (set lang "íslenska")
  546.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  547.                         (dest (tackon catdir lang))
  548.                     )
  549.                 )
  550.             )
  551.             (if (bitand languages 16)
  552.                 (
  553.                     (set lang "greek")
  554.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  555.                         (dest (tackon catdir lang))
  556.                     )
  557.                 )
  558.             )
  559.             (if (bitand languages 32)
  560.                 (
  561.                     (set lang "español")
  562.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  563.                         (dest (tackon catdir lang))
  564.                     )
  565.                 )
  566.             )
  567.             (if (bitand languages 64)
  568.                 (
  569.                     (set lang "deutsch")
  570.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  571.                         (dest (tackon catdir lang))
  572.                     )
  573.                 )
  574.             )
  575.             (if (bitand languages 128)
  576.                 (
  577.                     (set lang "português")
  578.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  579.                         (dest (tackon catdir lang))
  580.                     )
  581.                 )
  582.             )
  583.             (if (bitand languages 256)
  584.                 (
  585.                     (set lang "nederlands")
  586.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  587.                         (dest (tackon catdir lang))
  588.                     )
  589.                 )
  590.             )
  591.             (if (bitand languages 512)
  592.                 (
  593.                     (set lang "svenska")
  594.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  595.                         (dest (tackon catdir lang))
  596.                     )
  597.                 )
  598.             )
  599.             (if (bitand languages 1024)
  600.                 (
  601.                     (set lang "norsk")
  602.                     (copyfiles (source (tackon "Catalogs" lang)) (choices "Voodoo.catalog")
  603.                         (dest (tackon catdir lang))
  604.                     )
  605.                 )
  606.             )
  607.         )
  608.     )
  609.     
  610.     (if (exists "REGISTER")
  611.         (copyfiles
  612.             (source "REGISTER")
  613.             (dest @default-dest)
  614.             (prompt #copying-docs)
  615.             (infos)
  616.         )
  617.     )
  618.     )
  619.     (set update-voodoo (exists "SYS:WBStartup/AmiPOP"))
  620. )
  621.  
  622. (complete 83)
  623.  
  624. (if (= update-voodoo 0)
  625.     (
  626. ;        (set smtpmaildir (getenv "SMTPMAILDIR"))
  627. ;        (if (= smtpmaildir "") (set smtpmaildir (getenv "MAILDIR")))
  628. ;        (if (= smtpmaildir "") (set smtpmaildir @default-dest))
  629.         (set smtpmaildir @default-dest)
  630.         (if (and (exists "INBOX") (not nocopy))
  631.             (
  632.                 (set inbox-dir (tackon smtpmaildir "INBOX"))
  633.                 (makedir inbox-dir (prompt (cat #creating-dir inbox-dir)))
  634.                 (copyfiles
  635.                     (source "INBOX")
  636.                     (dest inbox-dir)
  637.                     (prompt #copying-welcome)
  638.                     (all)
  639.                 )
  640.             )
  641.         )
  642.     )
  643. )
  644.         
  645. (complete 86)
  646.  
  647. (if (exists "Contrib")
  648.     (
  649.         (message #contrib)
  650.         
  651.         (complete 87)
  652.         
  653.         (set amipopdest "SYS:WBStartup")
  654.         (if (askbool (prompt #contrib-amipop)
  655.                 (help #amipop-help)
  656.                 (default (not (exists (tackon amipopdest "AmiPOP"))))
  657.             )
  658.             (
  659.                 (complete 88)
  660.                 (if (= 0 (askchoice (prompt #amipop-stack) 
  661.                             (help #amipop-help)
  662.                             (choices "AS225" "AmiTCP")))
  663.                     (set amipopsource "Contrib/AmiPOP/AmiPOP")
  664.                     (set amipopsource "Contrib/AmiPOP/AmiPOP-AmiTCP")
  665.                 )
  666.                 (complete 89)
  667.                 (set amipopdest
  668.                     (askdir (prompt #amipop-where)
  669.                         (help #amipop-help)
  670.                         (default amipopdest)
  671.                     )
  672.                 )
  673.                 (complete 90)
  674.                 (copyfiles 
  675.                     (source amipopsource)
  676.                     (dest amipopdest)
  677.                     (newname "AmiPOP")
  678.                     (infos)
  679.                     (prompt (cat #installing "AmiPOP"))
  680.                 )
  681.                 (complete 91)
  682.                 (set amipop-host
  683.                     (askstring
  684.                         (prompt #amipop-host)
  685.                         (help #amipop-help)
  686.                     )
  687.                 )
  688.                 (complete 92)
  689.                 (set amipop-account
  690.                     (askstring
  691.                         (prompt #amipop-account)
  692.                         (help #amipop-help)
  693.                     )
  694.                 )
  695.                 (complete 93)
  696.                 (set amipop-password
  697.                     (askstring
  698.                         (prompt #amipop-password)
  699.                         (help #amipop-help)
  700.                     )
  701.                 )
  702.                 (complete 94)
  703.                 (set amipop-spool
  704.                     (askstring
  705.                         (prompt #amipop-spool)
  706.                         (help #amipop-help)
  707.                     )
  708.                 )
  709.                 (run (cat "SetEnv POPMAILBOX " amipop-spool) (safe))
  710.                 (if (> @user-level 0)
  711.                     (tooltype
  712.                         (prompt #amipop-tooltype)
  713.                         (dest (tackon amipopdest "AmiPOP"))
  714.                         (settooltype "POPHOST" amipop-host)
  715.                         (settooltype "USERNAME" amipop-account)
  716.                         (settooltype "MAILBOX" amipop-spool)
  717.                         (if (not (= amipop-password ""))
  718.                             (
  719.                                 (settooltype "PASSWORD" amipop-password)
  720.                                 (settooltype "NOWINDOW")
  721.                             )
  722.                         )
  723.                     )
  724.                 )
  725.             )
  726.         )
  727.         
  728.         (complete 95)
  729.         
  730.         (set sabotdest amipopdest)
  731.         (if (askbool (prompt #contrib-sabot)
  732.                 (help @askbool-help)
  733.                 (default (not (exists (tackon sabotdest "Sabot"))))
  734.             )
  735.             (
  736.                 (complete 96)
  737.                 (if (> @user-level 1)
  738.                     (set sabotdest
  739.                         (askdir (prompt #sabot-where)
  740.                             (help @askdir-help)
  741.                             (default sabotdest)
  742.                         )
  743.                     )
  744.                 )
  745.                 (complete 97)
  746.                 (set iconsdest
  747.                     (askdir (prompt #sabot-icons)
  748.                         (help @askdir-help)
  749.                         (default "ENVARC:Sys")
  750.                     )
  751.                 )
  752.                 (complete 98)
  753.                 (copyfiles 
  754.                     (source "Contrib/Sabot/Sabot")
  755.                     (dest sabotdest)
  756.                     (infos)
  757.                     (prompt #installing "Sabot")
  758.                 )
  759.                 (copyfiles
  760.                     (source "Contrib/Sabot")
  761.                     (choices "New.info" "Old.info" "None.info")
  762.                     (dest iconsdest)
  763.                     (prompt #installing "Sabot")
  764.                 )
  765.                 (complete 99)
  766.                 (if (> @user-level 0)
  767.                     (tooltype
  768.                         (prompt #sabot-tooltype)
  769.                         (dest (tackon sabotdest "Sabot"))
  770.                         (settooltype "MAIL" (tackon iconsdest "New"))
  771.                         (settooltype "OLDMAIL" (tackon iconsdest "Old"))
  772.                         (settooltype "NOMAIL" (tackon iconsdest "None"))
  773.                         (settooltype "MAILBOX" amipop-spool)
  774.                         (settooltype "MAILCOMMAND" "\"rx 'address VOODOO GETMAIL'\"")
  775.                         (settooltype "CLICKCOMMAND" (cat "\"" (tackon @default-dest "Voodoo") "\""))
  776.                         (settooltype "DROPCOMMAND" (cat "\"" (tackon @default-dest "Voodoo") " FOLDER\""))
  777.                     )
  778.                 )
  779.             )
  780.         )
  781.         (if (askbool (prompt #contrib-obtaingir)
  782.                 (help @askbool-help)
  783.                 (default 1)
  784.             )
  785.             (
  786.                 (set newobtaingirport (cat "Run >NIL: " (tackon @default-dest "NewObtainGIRPort")))
  787.                 (if (not nocopy)
  788.                     (copyfiles 
  789.                         (source "Contrib/NewObtainGIRPort/NewObtainGIRPort")
  790.                         (dest @default-dest)
  791.                         (prompt #installing "NewObtainGIRPort")
  792.                     )
  793.                     (set newobtaingirport (cat "Run >NIL: " (tackon @default-dest "Contrib/NewObtainGIRPort/NewObtainGIRPort")))
  794.                 )
  795.                 (startup "NEWOBTAINGIRPORT"
  796.                     (command newobtaingirport)
  797.                     (prompt #obtaingir-startup)
  798.                     (help #nohelp)
  799.                 )
  800.             )
  801.         )
  802.         (if (and nocopy (= update-voodoo 0))
  803.             (message #contrib-scripts-2)
  804.             (if (askbool (prompt #contrib-scripts-1)
  805.                     (help @askbool-help)
  806.                     (default 1)
  807.                 )
  808.                 (
  809.                     (set dir "Rexx")
  810.                     (makedir (tackon @default-dest dir) (prompt #creating-dir dir))
  811.                     (copyfiles 
  812.                         (source dir)
  813.                         (dest (tackon @default-dest dir))
  814.                         (prompt #installing dir)
  815.                         (all)
  816.                     )
  817.                     (set dir "S")
  818.                     (makedir (tackon @default-dest dir) (prompt #creating-dir dir))
  819.                     (copyfiles 
  820.                         (source dir)
  821.                         (dest (tackon @default-dest dir))
  822.                         (prompt #installing dir)
  823.                         (all)
  824.                     )
  825.                 )
  826.             )
  827.         )
  828.     )
  829. )
  830.  
  831. (complete 100)
  832.  
  833. (run (cat "run >NIL: SYS:Utilities/MultiView " (tackon @default-dest "README")) (prompt #readme))
  834.  
  835. (exit #bye)
  836.